This invention relates to programmable logic devices. More particularly, this invention relates to shared expander logic circuitry in such logic devices with which certain product-term logic signals may be selectively inverted.
Programmable logic devices are integrated circuits that may be programmed by a user to perform various logic functions. Some programmable logic devices use product-term architectures, in which input signals that have been combined using logical AND functions (product-terms) are further combined using logical OR functions (i.e., they are summed). Devices using product-term architectures may be based on programmable logic organized in the form of logic array blocks each of which contains a number of macrocells.
A typical macrocell contains OR logic for summing the product-terms associated with that macrocell. Each macrocell has a predetermined number of normal product-term inputs. For example, each macrocell may have five normal product-term inputs. Each macrocell may also accept a number of product-terms that have been borrowed from neighboring macrocells (sometimes referred to as parallel expanders). This allows macrocells with five normal product-term inputs to implement logic functions involving more than five product-terms.
Another type of expander connection that some macrocells use is the shared expander. Shared expanders are inverted product-terms that may be fed back to the inputs of the macrocells. Macrocells with shared expander logic can perform certain logic functions using fewer product-terms than would otherwise be possible. However, there is a speed penalty associated with conventional shared expander logic circuits, because a delay is incurred when the shared expander signals are fed back as inputs to the macrocells.
It is therefore an object of the present invention to provide arrangements that allow macrocells to handle more product-terms without needing to feed back signals to the inputs of the macrocells and without needing to borrow product-terms from neighboring macrocells.